Skip to content

Implemented source code upload as archive instead of separate files as multipart form - #760

Merged
ekharkunov merged 1 commit into
devfrom
upload-sources-as-zip
Aug 5, 2025
Merged

Implemented source code upload as archive instead of separate files as multipart form#760
ekharkunov merged 1 commit into
devfrom
upload-sources-as-zip

Conversation

@ekharkunov

Copy link
Copy Markdown
Contributor

Now source file are collected into zip archive which uploads to the Extender as one of the field of multipart form. It's allowed to save backward compatibility on Extender's side with old client which send sources as separated field of multipart form.

New approach helps to avoid limitation on form parts amount in Jetty.

Side notes:

  • Restructure client code a bit to better testing
  • Split client's test into separate files per class

Fixed #590

@github-actions

github-actions Bot commented Aug 5, 2025

Copy link
Copy Markdown

Summary - Extender code coverage report

Summary
Generated on: 08/05/2025 - 11:22:44
Coverage date: 08/05/2025 - 11:22:07
Parser: JaCoCo
Assemblies: 12
Classes: 72
Files: 72
Line coverage: 30.2% (1553 of 5138)
Covered lines: 1553
Uncovered lines: 3585
Coverable lines: 5138
Total lines: 10528
Branch coverage: 32.8% (637 of 1942)
Covered branches: 637
Total branches: 1942
Method coverage: Feature is only available for sponsors
Tag: 14_16748594262

Coverage

com/defold/extender - 27.1%
Name Line Branch
com/defold/extender 27.1% 29.9%
com/defold/extender/AppManifestConfiguration 100%
com/defold/extender/AppManifestPlatformConfig 100%
com/defold/extender/AsyncBuilder 0% 0%
com/defold/extender/BuilderConstants 0%
com/defold/extender/Configuration 100%
com/defold/extender/Extender 12.5% 12%
com/defold/extender/ExtenderApplication 0%
com/defold/extender/ExtenderController 21.2% 24.3%
com/defold/extender/ExtenderException 42.8%
com/defold/extender/ExtenderUtil 68.8% 57.9%
com/defold/extender/ExtenderYamlSafeConstructor 100%
com/defold/extender/ExtensionManifestValidator 69.5% 55%
com/defold/extender/FrameworkUtil 0% 0%
com/defold/extender/ManifestConfiguration 100%
com/defold/extender/ManifestPlatformConfig 100%
com/defold/extender/PlatformConfig 100%
com/defold/extender/TemplateExecutor 33.3% 50%
com/defold/extender/Timer 0%
com/defold/extender/TreePrinter 0% 0%
com/defold/extender/Version 0%
com/defold/extender/WebSecurityConfig 0% 0%
com/defold/extender/WhitelistConfig 100%
com/defold/extender/ZipUtils 64.9% 56.6%
com/defold/extender/builders - 0%
Name Line Branch
com/defold/extender/builders 0% 0%
com/defold/extender/builders/CSharpBuilder 0% 0%
com/defold/extender/cache - 35.4%
Name Line Branch
com/defold/extender/cache 35.4% 9.3%
com/defold/extender/cache/CacheEntry 100%
com/defold/extender/cache/CacheKeyGenerator 81.8% 100%
com/defold/extender/cache/DataCache
com/defold/extender/cache/DataCacheException 0%
com/defold/extender/cache/DataCacheFactory 0% 0%
com/defold/extender/cache/DummyDataCache 80%
com/defold/extender/cache/GCPDataCache 0% 0%
com/defold/extender/cache/LocalDiskDataCache 64.7% 16.6%
com/defold/extender/cache/info - 100%
Name Line Branch
com/defold/extender/cache/info 100% ****
com/defold/extender/cache/info/CacheInfoFileParser 100%
com/defold/extender/cache/info/CacheInfoFileWriter 100%
com/defold/extender/cache/info/CacheInfoWrapper 100%
com/defold/extender/log - 0%
Name Line Branch
com/defold/extender/log 0% 0%
com/defold/extender/log/ExtenderLogEnhancer 0% 0%
com/defold/extender/log/ExtenderLogEnhancerConfiguration 0% 0%
com/defold/extender/log/Markers 0%
com/defold/extender/metrics - 7.4%
Name Line Branch
com/defold/extender/metrics 7.4% ****
com/defold/extender/metrics/MetricsWriter 7.4%
com/defold/extender/process - 10.4%
Name Line Branch
com/defold/extender/process 10.4% 7.1%
com/defold/extender/process/ProcessExecutor 12.3% 8.8%
com/defold/extender/process/ProcessUtils 0% 0%
com/defold/extender/remote - 0%
Name Line Branch
com/defold/extender/remote 0% 0%
com/defold/extender/remote/RemoteBuildException 0%
com/defold/extender/remote/RemoteEngineBuilder 0% 0%
com/defold/extender/remote/RemoteHostConfiguration 0%
com/defold/extender/remote/RemoteInstanceConfig 0%
com/defold/extender/services - 24%
Name Line Branch
com/defold/extender/services 24% 24.3%
com/defold/extender/services/DataCacheService 0% 0%
com/defold/extender/services/DefoldSdkService 78% 66.6%
com/defold/extender/services/DefoldSdkServiceConfiguration
com/defold/extender/services/GCPInstanceService 0% 0%
com/defold/extender/services/GradleService 0%
com/defold/extender/services/GradleServiceInterface
com/defold/extender/services/HealthReporterService 0% 0%
com/defold/extender/services/MockGradleService 0%
com/defold/extender/services/RealGradleService 0% 0%
com/defold/extender/services/UserUpdateService 0% 0%
com/defold/extender/services/cocoapods - 49%
Name Line Branch
com/defold/extender/services/cocoapods 49% 50.9%
com/defold/extender/services/cocoapods/CocoaPodsService 9.4% 12.5%
com/defold/extender/services/cocoapods/IConfigParser
com/defold/extender/services/cocoapods/LanguageSet 75% 50%
com/defold/extender/services/cocoapods/MainPodfile 22.2%
com/defold/extender/services/cocoapods/PlatformAndLanguageSet 0% 0%
com/defold/extender/services/cocoapods/PlatformSet 0% 0%
com/defold/extender/services/cocoapods/PlistBuddyWrapper 0% 0%
com/defold/extender/services/cocoapods/PodSpec 47.3% 0%
com/defold/extender/services/cocoapods/PodSpecParser 81.7% 67.5%
com/defold/extender/services/cocoapods/PodUtils 50% 40%
com/defold/extender/services/cocoapods/ResolvedPods 55.4% 47.5%
com/defold/extender/services/cocoapods/XCConfigParser 96.3% 88.4%
com/defold/extender/services/data - 80.7%
Name Line Branch
com/defold/extender/services/data 80.7% 75%
com/defold/extender/services/data/DefoldSdk 87.5% 75%
com/defold/extender/services/data/GCPInstanceState 0%
com/defold/extender/tracing - 0%
Name Line Branch
com/defold/extender/tracing 0% 0%
com/defold/extender/tracing/ExtenderExecutor 0% 0%
com/defold/extender/tracing/ExtenderTracerInterceptor 0% 0%
com/defold/extender/tracing/TraceIdInResponseServletFilter 0% 0%

@ekharkunov
ekharkunov requested a review from JCash August 5, 2025 11:08
@ekharkunov
ekharkunov force-pushed the upload-sources-as-zip branch from 7394f4d to 611cba8 Compare August 5, 2025 11:11
@ekharkunov
ekharkunov force-pushed the upload-sources-as-zip branch from 611cba8 to c2256fe Compare August 5, 2025 11:20

@JCash JCash left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@ekharkunov
ekharkunov merged commit b5b1b6d into dev Aug 5, 2025
1 check passed
@ekharkunov
ekharkunov deleted the upload-sources-as-zip branch August 5, 2025 13:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Error while building c++ extensions

2 participants